using System;
using Sinacor.Infra.UI.Common;
using System.Collections.ObjectModel;

namespace Sinacor.UI.Bovespa.ManutencaoOrdens.Model
{
    /// <summary>
    /// Modelo de tipo de Permissoes
    /// </summary>
    [Serializable]
    public class Permissoes : BaseModel 
    {
		private bool _permiteAlterar;
		private bool _permiteAlterarAtivo;
		private bool _permiteAlterarCliente;
		private bool _permiteAlterarPercentualCorretagem;
		private bool _permiteAlterarQuantidade;
		private bool _permiteCancelar;
		private bool _permiteIncluir;
        private bool _permiteCasar;
        private bool _permiteManutencaoNegocio;

		public Permissoes(){}

		public bool PermiteAlterar{
			get{
				return _permiteAlterar;
			}
			set{
				_permiteAlterar = value;
                OnPropertyChanged("PermiteAlterar");
			}
		}

		public bool PermiteAlterarAtivo{
			get{
				return _permiteAlterarAtivo;
			}
			set{
				_permiteAlterarAtivo = value;
                OnPropertyChanged("PermiteAlterarAtivo");
			}
		}

		public bool PermiteAlterarCliente{
			get{
				return _permiteAlterarCliente;
			}
			set{
				_permiteAlterarCliente = value;
                OnPropertyChanged("PermiteAlterarCliente");
			}
		}

		public bool PermiteAlterarPercentualCorretagem{
			get{
				return _permiteAlterarPercentualCorretagem;
			}
			set{
				_permiteAlterarPercentualCorretagem = value;
                OnPropertyChanged("PermiteAlterarPercentualCorretagem");
			}
		}

		public bool PermiteAlterarQuantidade{
			get{
				return _permiteAlterarQuantidade;
			}
			set{
				_permiteAlterarQuantidade = value;
                OnPropertyChanged("PermiteAlterarQuantidade");
			}
		}

		public bool PermiteCancelar{
			get{
				return _permiteCancelar;
			}
			set{
				_permiteCancelar = value;
                OnPropertyChanged("PermiteCancelar");
			}
		}

		public bool PermiteIncluir{
			get{
				return _permiteIncluir;
			}
			set{
				_permiteIncluir = value;
                OnPropertyChanged("PermiteIncluir");
			}
		}

        public bool PermiteCasar
        {
            get
            {
                return _permiteCasar;
            }
            set
            {
                _permiteCasar = value;
                SetValue<bool>("PermiteCasar", ref _permiteCasar, value);
            }
        }

        public bool PermiteManutencaoNegocio
        {
            get
            {
                return _permiteManutencaoNegocio;
            }
            set
            {
                _permiteManutencaoNegocio = value;
                SetValue<bool>("PermiteManutencaoNegocio", ref _permiteManutencaoNegocio, value);
            }
        }

	}

}